#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QPushButton>
#include <QLabel>
#include "util.h"
#include <service.h>
#include <QDebug>
#include <ApplicationManager.h>
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

/**
 * @brief 主窗口：计算有理数的加减乘除
 * @date 2022.12.1 -
 * @author 涛
 */
class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();
private:
    Ui::MainWindow *ui;
    //处理计算业务
    Service service;
    //数字按钮组
    QPushButton* btns[10];
    //清空按钮
    QPushButton* btn_clear;
    //删除按钮
    QPushButton* btn_del;
    //加按钮
    QPushButton* btn_add;
    //减按钮
    QPushButton* btn_sub;
    //乘按钮
    QPushButton* btn_mul;
    //除按钮
    QPushButton* btn_div;
    //等号按钮
    QPushButton* btn_equal;
    //小数点按钮
    QPushButton* btn_point;

    //表达式标签
    QLabel* label_expression;
    QLabel* label_result;

    //切换按钮
    QPushButton* btn_change;
    //上方选择窗口
    QPushButton* btn_complex;
    QPushButton* btn_matrix;
    QPushButton* btn_set;

    //窗口标记
    int flag = 0;
};
#endif // MAINWINDOW_H
